inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

강의 질문입니다.

미해결

처음하는 플러터(Flutter) 기초부터 실전까지 [풀스택 Part4] (쉽고 견고하게 단계별로 다양한 프로젝트까지)

Flutter와 Firebase/Firestore 까지 활용한 그럴듯한 서비스 만들어보기 6까지 실습해봤는데요. TextButton >> addEntryWithAutoGeneratedId를 통해서 Task를 추가하면 id가 ''로 해서 나오는 것을 Firebase 사이트를 통해서 확인을 했고 UpdateEntryWithId에 의해서 수정을 하게 되면 그때는 id가 등록된 것이 Firebase에서 확인을 했습니다. Add를 할때는 id가 ''으로 저장되는게 맞나요? 제가 코드를 잘못 따라한건지 궁금합니다.

  • flutter
  • firebase
  • dart
  • frontend
  • firestore
이근삼 댓글 2 좋아요 0 조회수 250

WebView Url 호출안되시는 분들은

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

import 'package:flutter/material.dart'; import 'package:webview_flutter/webview_flutter.dart'; class HomeScreen extends StatelessWidget { final homeUrl = Uri.parse('https://blog.codefactory.ai'); final WebViewController controller = WebViewController(); HomeScreen({super.key}) { controller.loadRequest(Uri.parse('https://blog.codefactory.ai')); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Blug App Bar'), centerTitle: true, backgroundColor: Colors.orange, ), body: WebViewWidget( controller: controller, ), ); } } 이렇게하시면 됩니당

  • flutter
  • 클론코딩
김지언 댓글 1 좋아요 2 조회수 389

default.tsx를 넣는대신 modal의 타입을 ?로 하면안되나요?

미해결

Next + React Query로 SNS 서비스 만들기

modal이 없는 상황의 오류를 해결하기위해 제로초님이 default.tsx라는 파일을 소개해줬는데요, 그냥 layout.tsx에서 애초에 Probs를 정의할때 type Probs= modal?:reactNode로 하면 안될까요?

  • react
  • next.js
  • react-query
  • next-auth
  • msw
김창훈 댓글 1 좋아요 0 조회수 248

4회 기출 유형(작업형2)

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

4회 기출 유형(작업형2)까지 수강하였을 때, 제가 이해한 내용은 다음과 같습니다. <모델의 성능을 평가하는 방법> 데이터 분리 (X_tr, X_val, y_tr, y_val) → 모델 학습 & 하이퍼 파라미터 튜닝 → 평가 (f1 score, roc_auc_score 등) 하이퍼 파라미터 튜닝의 값을 조절해가며 평가 점수 확인 데이터 분리 없이, 모델 학습 & 하이퍼 파라미터 튜닝 → 교차검증 (cross_val_score) 이때 질문드립니다. 제가 이해한 대로, 모델의 성능을 평가하는 방법이 위의 2가지가 있는게 맞을까요? 강사님이 영상에서 교차검증을 사용한 이유는 문제에서 평가 방식을 '평가: Macro f1-score'라고 제시해주었기 때문인가요? 혹시 실제 시험 상황에서 평가 방식을 제시해주지 않는다면, 위의 2가지 방법 중 어떤 것을 사용해도 상관이 없는건가요?

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
yb 댓글 1 좋아요 0 조회수 215

수강 기간이 존재하는데...

해결됨

Flutter 앱 개발 기초

제가 이거 수강기간이 존재하는 것을 모르고 구매하고 지금 아직 듣지 못한 상태인데 2개월이 남았더라구요. 수강기간이 끝나면 이 강좌는 닫히고 들으려면 재구매를 해야되는건가요?? 제 다른 구매 강좌들은 다 수강기간이 무제한이어서 제대로 안보고 구매했네요

  • flutter
nnnyyy 댓글 2 좋아요 1 조회수 259

msw patch

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 msw patch 관련해서 여쭤보고싶은게 있습니다! 제로초님 강의를 응용해서 프로젝트에 msw로 데이터들을 테스트 하고있습니다 handler에서 /users란 엔드포인트로 get요청후 데이터들을 받아온뒤 다시 수정이 필요해 patch handler를 생성했습니다. mutation을 통해서 patch 요청은 성공한거같은데 기존의 get으로 받아온 user데이터들을 수정하고 싶다면 어떻게 할수있을지 여쭤보고싶습니다 ! const mutation = useMutation({ mutationFn: async (e: FormEvent) => { e.preventDefault(); const updatedUser = { userId: product.userId, nickName: product.nickName, userFileUrl: product.userFileUrl, techStack: product.techStack, position: product.position, employmentStatus: product.employmentStatus, year: product.year, links: product.links, alarmStatus: product.alarmStatus, content: product.content, softSkill: product.softSkill, }; fetch(`${process.env.NEXT_PUBLIC_BASE_URL}/users`, { method: "PATCH", body: JSON.stringify(updatedUser), }); }, }); import { bypass, http, HttpResponse } from "msw"; import { hotPeople, peoples, users } from "./peopleData"; export const handlers = [ http.get("/peoples/hot/:tag", () => { return HttpResponse.json(hotPeople); }), http.get("/peoples", ({ request, params }) => { return HttpResponse.json(peoples); }), http.get("/users", () => { return HttpResponse.json(users); }), http.patch("/users", async ({ request }) => { return HttpResponse.text("success?"); }), ]; export default handlers;

  • react
  • next.js
  • react-query
  • next-auth
  • msw
댓글 1 좋아요 0 조회수 217

피벗테이블 열 추가

미해결

[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]

section 9 듣다가 피벗테이블 질문있어요 코드 : doc_covid2 = pd.pivot_table(doc_covid, index=['Country_Region'], values=['Confirmed'], aggfunc={'Confirmed': 'sum'}, fill_value=0, margins=True, margins_name='Total' ) 같은 경우 말그대로 doc_covid 에서 피벗테이블을 만드는데 Country_Region 에 대해서 Confirmed 를 더한 값을 컬럼으로 만드는 내용이잖아요 혹시 여기서 열을 추가 하는게 가능한 건가요?? Confirmed의 median 값을 컬럼으로 만드는 열을 추가 하고 싶은데 가능한건지요 ... 라고 질문글을 썼는데 혹시 몰라 그냥 구글에 검색하니까 aggfunc=['sum','median'] 이라 쓰면 됐었네요... 다른 분들에게도 도움 되시라고 그냥 남깁니다.

  • pandas
  • python
  • pivot
러시안블루 댓글 1 좋아요 0 조회수 252

로그인 모달창 새로고침 시 배경 메인 페이지 사라지는 현상

미해결

Next + React Query로 SNS 서비스 만들기

로그인 버튼을 클릭하면 우선 '/login' 주소로 이동했다가 'i/flow/login'으로 이동하기 때문에 이때 '/login'에서 배경이 메인 컴포넌트를 보여줘야 메인 페이지가 바탕이 되고로그인 모달 창을 띄운다는 점은 이해했습니다. 따라서 app/(beforeLogin)/login/page.tsx 에서 Main 컴포넌트를 보여주도록 했습니다. export default function Login() { const router = useRouter(); router.replace("/i/flow/login"); return <Main />; } 문제는 '/i/flow/login' 에서 새로고침하면 모달 창은 그대로지만 배경은 메인 페이지가 아닙니다. 이때 아래와 코드와 같이 따로 Main 컴포넌트를 불러오면 새로고침 시, 배경은 메인 페이지로 잘 나옵니다.그런데 강의와 깃허브 코드를 보니 LoginModal 컴포넌트만 보여주고 있습니다. LoginModal 컴포넌트만 있어도 app/(beforeLogin)/page.tsx에서 Main 컴포넌트를 보여주고 있으므로 app/(beforeLogin)/layout.tsx에서 Main 컴포넌트가 {children}에 할당된다고 생각했습니다. 따라서 아래 코드에서 Main 컴포넌트가 없어도 배경은 메인 페이지가 나온다고 생각했습니다. 아래 코드와 같이 Main 컴포넌트가 있으면 새로고침 시, 메인 페이지가 배경이 되고 그 위에 로그인 모달창이 띄워지지만 Main 컴포넌트가 없으면 새로고침 시, 메인 페이지가 빈 페이지가 나옵니다. 여기서 Main 컴포넌트를 넣어서 해결해도 되는건지 의문이 들었습니다. 아래 코드에서 Main 컴포넌트를 넣지 않으면 Main 페이지가 어떻게 배경으로 보여지는 건지 알고 싶습니다! import LoginModal from "@/app/(beforeLogin)/@modal/(.)i/flow/login/page"; import Main from "@/app/(beforeLogin)/_component/Main"; export default function Page() { return ( <> <LoginModal /> <Main /> </> ); }

  • react
  • next.js
  • react-query
  • next-auth
  • msw
 키키 댓글 1 좋아요 0 조회수 277

[공유] cy.visit() failed trying to load;

미해결

2시간으로 끝내는 프론트엔드 테스트 기본기

위 화면처럼 connect ECONNREFUSED::1:54382등 locahost에 접근할 수 없다고 나오면 cypress.config.ts에서 baseurl 설정해야합니다. ( https://parkparkpark.tistory.com/186) import { defineConfig } from "cypress"; export default defineConfig({ e2e: { baseUrl: "http://localhost:3000", setupNodeEvents(on, config) { // implement node event listeners here }, }, });

  • react
  • jest
  • 소프트웨어-테스트
  • Cypress
  • storybook
  • chatgpt
류준열 댓글 2 좋아요 4 조회수 424

7회 기출문제 원핫인코딩 관련 질문입니다.

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

원핫인코딩 시, 만약에 test 데이터에 train에서 포함하지 않은 값이 있어 컬럼이 하나 더 생기는 상황이 발생한다면 레이블인코딩으로 진행해야 하나요?

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
석구 댓글 1 좋아요 0 조회수 257

에러가 생겨서 질문드립니다

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

에러 내용 W/WindowOnBackDispatcher(25534): OnBackInvokedCallback is not enabled for the application. W/WindowOnBackDispatcher(25534): Set 'android:enableOnBackInvokedCallback="true"' in the application manifest. 증상: 실행시키면 녹색바탕에 codefactory 로고 와 인디케이터 화면이 나오면서 무지 오래 20분 이상 계속 되다가 로그인 화면으로 들어가네요 로그인 화면으로 바로 들어가야 하는데요. 그게 안되고 있습니다. 로그인 화면으로 들어갈 때 첨부한 사진 하단 2줄 메세지가 나오네요 (에러 내용 참조) 검색하면 증상 대처법이 나오는데 따라해도 똑같습니다. 설정 어디를 바꾸면 될거도 같은데 찾지 못하고 있습니다.

  • flutter
  • 하이브리드-앱
cdway 댓글 2 좋아요 0 조회수 1402

sum(), len(), count() 각각 언제 사용되는지 차이가 궁금합니다

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

합계, 길이, 개수 이런식으로 문제에 명시되지 않고 데이터 수를 구하여라 이런 식으로 적혀있을 때, sum이 사용된 적도 있고 len이 사용된 적도 있는데 sum(), len(), count() 각각 언제 사용되는지 궁금합니다 수치형, 범주형에 따른 사용 가능 여부 차이도 있나요??

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
soyoung an 댓글 2 좋아요 1 조회수 733

영상통화 user가 2명이상일때 함수 적용 방법

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요! 아고라 모바일 + 웹 데모에서 실행을 했을 때, 3명이 들어왔다고 하면 mute 함수들을 써주려면, 어떤식으로 코드를 작동하면 3명이 전부 mute함수를 가질 수 있을까요? 현재 강의는 enableVideo라는 함수로 모바일 + 웹데모 참여자가 두명다 enable 이 되는 것 같은데... 저희 프런트 코드에서 3명에게 모두 mute버튼과 함수를 부여해주려면 어떤식으로 보통 설계가 들어가는지 궁금합니다.

  • flutter
  • 클론코딩
yesman 댓글 2 좋아요 0 조회수 284

[1.2장 상품목록 화면] 1.2.3 Button ...rest 관련 질문 드립니다.

미해결

[React 2부] 고급 주제와 훅

안녕하세요. 아래 질문에 대한 답글을 보고 …rest에 대해 이해를 했는데요. https://www.inflearn.com/questions/1186424 몇 가지 궁금한 점이 생겨 질문 드립니다! 강의에서 나온 방식이 1번 어트리뷰트로 버튼 컴포넌트에 인자를 전달하는 것 맞을까요? App.jsx <Button styleType={"brand"} onClick={() => console.log("TODO: 주문하기 클릭")} > 주문하기 </Button> Button.jsx const Button = ({ styleType, block, ...rest }) => { let className = 'Button'; if (styleType) className += ` ${styleType}`; if (block) className += ` block`; return <button className={className} {...rest}/> }; export default Button; 위 App.jsx의 Button에 대한 JSX 코드를 JS 코드로 변환하면 아래와 같이 변환 되나요? onClick은 어떤 식으로 변환되는지 궁금합니다. createElement( Button, // 함수 { styleType: "brand" }, // props onClick: () => console.log("TODO: 주문하기 클릭") // children "주문하기 , 결제하기" // children ) onClick도 …rest 나머지 매개변수 구문에 들어갔는데, 개발자 도구에서 props를 보면 onClick은 onClick이라는 프롭스에 맵핑 되어 있습니다. rest 객체에 children, onClick 속성이 포함되어 있어서 내부적으로 구분해주는 것인가요? 아래처럼 작성 하는 게 2번 태그 안에 인자를 전달하는 방식 맞을까요? <Button styleType={"brand"} onClick={() => console.log("TODO: 주문하기 클릭")} children={"주문하기"} > </Button> 감사합니다.

  • react
  • React-Context
  • react-hooks
  • react-router
  • react-component
현지원 댓글 2 좋아요 1 조회수 418

이렇게 사용하면 안되나요 ?

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다! 3:40 초쯤에 11시라 써진 텍스트 위젯, 이미지 위젯, 보통 이라 써진 텍스트 위젯을 하나 하나 expanded 위젯으로 감싸서 서로 차지하는 공간을 가로로 균등하게 만들어 주고있는데요 그냥 row위젯에 mainAxisAlignment: MainAxisAlignment.spaceBetween, 추가하면 원하는 결과랑 똑같이 나오는거 같은데 이렇게 사용하면 안될까요?? 나중에 다른 작업때문에 저렇게 하는건지 궁금합니다 !! 이게 제가 말하는 방식입니다!!

  • flutter
  • 클론코딩
winwin7200 댓글 1 좋아요 0 조회수 256

BottomNavigationBar 질문

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

검색 방법이 잘못된건지 모르지만 구글에 검색해도 해결법이 나오지않아 질문 올립니다. bottomNavagtionBar: GestureDetector( onTap: (){ Navigator.push(context, MaterialPageRoute(builder: (context) => CommentRegisterScreen( id: widget.id))); }, child: TRoundedContainer( height: 60, backgroundColor: const Color(0xffF8F8FA), padding: const EdgeInsets.all(TSizes.defalutSpace), radius: 0, child: Text( '댓글을 남겨보세요.', style: Theme.of(context).textTheme.bodyMedium!.copyWith(color: Colors.grey), ), ), ), child: SingleChildScrollView( child: Padding( padding: const EdgeInsets.all(TSizes.defalutSpace), child: Column( children: [ const SizedBox(height: TSizes.spaceBtwItems), SizedBox( height: MediaQuery.of(context).size.height, child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ Expanded( child: PaginationListViewV2( model: state, id: widget.id, provider: commentProvider(widget.id), itemBuilder: <Comment>(_,index,comment){ if(index == 0){ return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ /// 제목 Text(state.title, style: Theme.of(context).textTheme.headlineMedium), const SizedBox(height: TSizes.spaceBtwItems), /// 닉네임 Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ const TRoundedImage( width: 24, height: 24, fit: BoxFit.fill, imageUrl: 'asset/img/no_image.png', borderRadius: 100, ), const SizedBox(width: TSizes.sm), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( state.creator, style: Theme.of(context).textTheme.bodyLarge, ), ], ), ], ), const SizedBox(height: TSizes.spaceBtwItems), /// 날짜, 좋아요 Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Text( state.createDate.split("T")[0], style: Theme.of(context).textTheme.bodyMedium!.copyWith(color: Colors.grey), ), GestureDetector( onTap: button.disable==false ? () async { //버튼 비활성화 await button.change(); await check == -1 ? ref.read(communityProvider.notifier).clickFavorite(widget.id) : ref.read(communityProvider.notifier).downFavorite(widget.id); await ref.read(favoriteProvider.notifier).updateFavorites(widget.id); //버튼 활성화 await button.change(); } : null, child: check == -1 ? TRoundedContainer( showBorder: true, padding: const EdgeInsets.all(TSizes.sm), borderColor: Colors.redAccent, radius: 10, child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ Text( '좋아요', style: Theme.of(context).textTheme.labelMedium!.copyWith(color: Colors.redAccent), ), const SizedBox(width: TSizes.xs), Text( state.favorite.toString(), style: Theme.of(context).textTheme.labelMedium!.copyWith(color: Colors.redAccent), ), ], ), ) : TRoundedContainer( padding: const EdgeInsets.all(TSizes.sm), backgroundColor: Colors.redAccent, radius: 10, child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ child: SizedBox( height: 120, child: ListView.separated( shrinkWrap: true, scrollDirection: Axis.horizontal, itemCount: imgs.length, separatorBuilder: (_, __) { return const SizedBox(width: TSizes.spaceBtwItems / 2); }, itemBuilder: (_, int index) { return TRoundedImage( imageUrl: imgs[index].toString().trim(), width: 120, height: 120, fit: BoxFit.fill, borderRadius: 12.0, isNetworkImage: true, ); }, ), ), ), ], ) : const SizedBox(), const SizedBox(height: TSizes.spaceBtwSections), /// 글 내용 Text( state.content.trim(), style: Theme.of(context).textTheme.bodyMedium!.copyWith(height: 1.5), ), /// 댓글 0이 아닐 경우 Row( children: [ Text('댓글', style: Theme.of(context).textTheme.bodySmall), const SizedBox(width: TSizes.spaceBtwItems / 2), Text(state.commentCnt.toString(), style: Theme.of(context).textTheme.bodySmall), ], ), const SizedBox(height: TSizes.spaceBtwItems), CommentCard( comment:comment, recomments:comment.commentList, board_id: widget.id ) ], ); } return CommentCard( comment:comment, recomments:comment.commentList, board_id: widget.id ); }), ), Container( height: 210 ) ] ), ), // Center(child: Text('첫 댓글을 남겨주세요.', style: Theme.of(context).textTheme.bodySmall)), ], ), ), ), 위 코드와 같이 BottomNavigationBar와 SinglechildScrollView를 같이 사용하고 있습니다. 가장 하단의 Container( height: 210 ) 위 코드를 넣어주지 않을 시 화면 스크롤이 모두 안되고 짤리는 현상이 발생합니다. 혹시 이러한 경험이 있어 해결방법이 있다면 알려주시면 감사하겠습니다.

  • flutter
  • 하이브리드-앱
dlckdals9467 댓글 1 좋아요 0 조회수 228

플러터 내 생성 시 file / directory의 차이

해결됨

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

플러터 내 생성 시 file / directory의 차이가 궁금합니다. 어떨 때는 New에서 file을 생성하고 어떨 때는 directory를 생성해서요~

  • flutter
  • 클론코딩
DI 댓글 1 좋아요 0 조회수 225

toolchanin 에러가 발생합니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

Android toolchain - develop for Android devices X Unable to locate Android SDK. Install Android Studio from: https://developer.android.com/studio/index.html On first launch it will assist you in installing the Android SDK components. (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions). If the Android SDK has been installed to a custom location, please use flutter config --android-sdk to update to that location. Android SDK is up to date. Running Android Emulator hypervisor driver installer [SC] ControlService 실패 1062: 서비스가 시작되지 않았습니다. [SC] DeleteService 성공 [SC] 4294967201 오류가 발생하여 StartService이(가) 실패했습니다. Done 이런 오류는 어떻게 해결하나요?

  • flutter
  • 클론코딩
조은형 댓글 1 좋아요 1 조회수 263

다시 getDetail호출?

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

제 생각이 조금이라도 이상한 곳이 있다면 말씀해주세요 ~! ㅎㅎ 첫번째 질문은 , detail_screen.dart에서 initState에 ref.read(restaurantProvider.notifier).getDetail(id: widget.id); 만 사용하였는데 만약 restaurantDetailModel이 이미 있는 id를 또 getDetail한 거였다면, 다시 getDatil을 호출할 필요가 없으므로 이떄 initState에 ref.read(restaurantDetailProvider) is restaurantDetailModel 라면 getDatil을 호출하지 않겠다를 추가로 넣으면 좋겠다 생각하는데 제 생각이 어떠한가요?? 두번째 질문은 restaurant > provider > restaurant_provider.dart 에서 네트워크 요청을 하다가 등등 에러가 날수 있을 거 같은데 여기는 catch 로 잡아서 state를 왜 error로 만들지 않았나 궁금합니다..!

  • flutter
  • 하이브리드-앱
유하 댓글 1 좋아요 0 조회수 183

IBKR Desktop Global Configuration 설정

해결됨

파이썬 알고리즘 트레이딩 파트2: Interactive Brokers API를 활용한 실시간 알고리즘 트레이딩

안녕하세요 강사님 IBKR Desktop 다운로드 이후 api 설정을 해주려고 했는데요 뭔가 버전이 다른 건지 화면이 달라서 어디서 설정을 할 수 있는지가 잘 안보여서 문의드립니다! 감사합니다!

  • python
  • 객체지향
  • 퀀트
luca 댓글 2 좋아요 1 조회수 437

인기 태그

인프런 TOP Writers

주간 인기글